Intelligent power management of an intermediate network device switching circuitry and poe delivery

ABSTRACT

Embodiments of the invention include a management agent which has access to power output control circuitry of a digital electronic communication switch, a power meter, a load sharing means, and the ability to manage the power of switching circuits in the switch. The power meter enables the management agent to identify the power consumed by the switching circuits that are enabled and operational. This information, coupled with (1) knowledge of the power allocated to each port via PoE, and (2) policy information (which specifies power allocation preferences) is used in a two-pass power management method.

BACKGROUND

Electronic communication switches have unpredictable power requirements,due in part to the widely varying and unpredictable communication loadsand Power over Ethernet (PoE) loads they are called upon to handle.This, in combination with a movement towards energy efficiency, iscreating a need for new methods for managing power in network switches.

A variety of existing techniques are used to manage power in networkswitches. For example, in modular switches, which consist of a set ofswitching modules operating in cooperation with each other, the powersupplied to each of the switching modules is managed to assure that: (1)the total power supplied to the switching modules is not greater thanthe capacity of the installed power supplies; and (2) to maintain enoughpower head room to handle a power supply going down without affectingthe switching modules' operation. As another example, switch ASICvendors offer switching ASICs that can power down portions of theswitching circuitry to save power.

As yet another example, stackable switches have PoE power management,which enables the switch to provide power to connected devices overEthernet connections. Such switches do not, however, have the ability todynamically re-allocate power between internal switch circuitry andpower provided to external devices via PoE.

There is a catch-22 problem managing power allocation between switchport operation and PoE power delivery. If one were to first measure thepower used by the switching circuitry to estimate the amount of powerthe circuitry will need, the estimate will be low because the circuitryis in an idle state and therefore not consuming as much power as when itis passing data in an active state. If one were then to allocate PoEpower based on this low estimate and then turn on the external devices,the devices would begin to transmit data, thereby activating theswitching circuitry, which would not receive sufficient power. On theother hand, if one first tries to allocate all the PoE power requested,insufficient power may be reserved for the switching circuitry. To avoidsuch problems, existing switches typically supply the maximum(worst-case) power to the switching circuitry and to PoE at all times.

SUMMARY

Embodiments of the invention include a management agent which has accessto power output control circuitry of a digital electronic communicationswitch, a power meter, a load sharing means, and the ability to managethe power of switching circuits in the switch. The power meter enablesthe management agent to identify the power consumed by the switchingcircuits that are enabled and operational. This information, coupledwith (1) knowledge of the power allocated to each port via PoE, and (2)policy information (which specifies power allocation preferences) isused in a two-pass power management method.

The first pass initializes the system by supplying power to theswitching circuitry and, via PoE, to other devices over the attachedEthernet cables based on port priority and other secondary parameterswhen needed. The second pass monitors actual power consumed by both theswitching circuitry and external devices, and learns more about what isconnected to each of the switch ports to better tune the appliedpriorities. Since some priorities are based on what is connected to theport, the type of device connected to the port (or where in the networktopology the port is located) can be ascertained by inspecting networktraffic transmitted by the device or via communication packets inquiringinformation from the attached devices. As a result of the actual powermeasurements and the better understanding of the connected device types,a second power allocation is made. The power management agent continuesto monitor network traffic and/or to send communications to attacheddevices to keep abreast of the attached network types, operationalstatus, and possibly changing power needs.

More specifically, one embodiment of the present invention is directedto a method for power management in a network switch having a pluralityof switching circuits and at least one port. The method comprises: (A)selecting an allocation of power to the plurality of switching circuitsand the at least one port, comprising: (A) (1) measuring a first amountof power consumed in aggregate by the plurality of switching circuits;(A) (2) identifying a second amount of power consumed in aggregate bythe at least one port via Power over Ethernet (PoE); and (A) (3)selecting the first allocation based on the first amount of power andthe second amount of power.

Another embodiment of the present invention is directed to a powermanagement agent for use with a network switch, the network switchhaving a plurality of switching circuits and at least one port. Thepower management agent comprises: means for receiving a first signalrepresenting a first amount of power consumed in aggregate by theplurality of switching circuits; means for receiving a second signalidentifying a second amount of power consumed in aggregate by the atleast one port via Power over Ethernet (PoE); and; means for selecting afirst allocation of power to the plurality of switching circuits and theat least one port based on the first amount of power and the secondamount of power.

A further embodiment of the present invention is directed to a networkswitch comprising: a plurality of switching circuits; at least one port;a power management agent; load sharing means; and a power meter. Thepower meter comprises: means for measuring a first amount of powerconsumed in aggregate by the plurality of switching circuits; means fortransmitting a signal representing the first amount of power to the loadsharing means; means for identifying a second amount of power consumedin aggregate by the at least one port via Power over Ethernet (PoE); andmeans for transmitting a signal representing the second amount of powerto the load sharing means. The load sharing means comprises: means forselecting a first allocation of power to the plurality of switchingcircuits and the at least one port based on the first amount of powerand the second amount of power; and means for transmitting a signalrepresenting the first allocation of power to the power managementagent. The power management agent comprises power output controlcircuitry for allocating power to the plurality of switching circuitsand the at least one port in accordance with the first allocation.

Yet another embodiment of the present invention is directed to a methodfor power management in a network switch having a plurality of switchingcircuits and at least one port. The method comprises: (A) selecting afirst allocation of power to the plurality of switching circuits and theat least one port; (B) selecting a second allocation of power to theplurality of switching circuits and at least one port, comprising: (B)(1) measuring a first amount of power consumed in aggregate by theplurality of switching circuits; (B) (2) measuring a second amount ofpower consumed in aggregate by the at least one port via Power overEthernet (PoE); (B) (3) identifying characteristics of at least onedevice connected to the at least one port; (B) (4) modifying, based onthe identified device characteristics, at least one power managementpolicy for allocating power among the at least one port to produce atleast one modified power management policy; and (B) (5) selecting thesecond allocation of power based on the first amount of power, thesecond amount of power, the identified device characteristics, and theat least one modified power management policy.

Yet a further embodiment of the present invention is directed to a powermanagement agent for use with a network switch. The network switchincludes a plurality of switching circuits and at least one port. Thepower management agent comprises: internal power identification meansfor identifying an amount of power available from an internal powersupply of the switch; internal power provision means for providing powerto the at least one port using power from the internal power supply ifthe amount of power available is at least as great as the aggregateamount of power required to be provided to the at least one port; andexternal power provision means. The external power provision meanscomprises means for performing the following functions if the amount ofpower available is less than the aggregate amount of power required tobe provided to the at least one port: requesting power from at least onedevice connected to the at least one port; receiving power from the atleast one device; and providing power to the at least one port usingpower from the internal power supply and the received power.

Another embodiment of the present invention is directed to a systemcomprising: a network switch and a first device connected to the switchover a network connection at a port of the network switch. The networkswitch comprises means for providing power via PoE to the first devicewhile no data is being sent to or received from the first device overthe network connection.

Yet another embodiment of the present invention is directed to a networkswitch comprising: a port comprising means for coupling the port to afirst device over a network connection; and means for providing powervia PoE to the first device while no data is being sent to or receivedfrom the first device over the network connection.

A further embodiment of the present invention is directed to a devicecomprising: a port comprising means for coupling the port to a networkswitch over a network connection; and means for receiving power via PoEfrom the network switch over the network connection while no data isbeing sent to or received from the device over the network connection.

Another embodiment of the present invention is directed to a networkcable comprising: means for connecting the cable to a device; means fortransmitting data to and receiving data from the device according to anetwork protocol over a network connection; and means for requestingpower over the network connection on behalf of the device.

Other features and advantages of various aspects and embodiments of thepresent invention will become apparent from the following descriptionand from the claims.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1A is a block diagram of a switch according to one embodiment ofthe present invention;

FIG. 1B is a block diagram of a switch according to another embodimentof the present invention;

FIG. 2 is a block diagram of a power management agent according to oneembodiment of the present invention;

FIG. 3 is a flow chart of a method for performing an initial (firstpass) allocation of power according to one embodiment of the presentinvention;

FIG. 4 is a flow chart of a method for performing a second passallocation of power according to one embodiment of the presentinvention; and

FIG. 5 is a diagram of a switch with PoE power-sourcing equipmentcapabilities connected to devices that lack integral PoE capabilities,via Ethernet cables according to one embodiment of the presentinvention.

DETAILED DESCRIPTION

Embodiments of the present invention provide improved power managementin digital electronic network switches. For example, if there isinsufficient power available to the switch to satisfy all power requestsmade to the switch, or there is a desire to limit the power provided bythe switch, embodiments of the present invention may adjust the amountof power provided both to the switch's internal circuitry and toexternal devices connected to the switch. The power adjustment may bemade based on a combination of information about the devices connectedto the switch's ports, the amount of power allocated to each port viaPoE, and policy information that specifies power allocation preferences.

In certain embodiments of the present invention, the general powermanagement method summarized above is performed in two passes. The firstpass initializes the system by supplying power to the switchingcircuitry, and via PoE, to other devices over the attached Ethernetcables based on port priority and other secondary parameters whenneeded. The second pass monitors actual power consumption and learnsmore about what is connected to each of the switch ports to better tunethe applied priorities. As a result of the actual power measurements andthe better understanding of the connected device types, a second powerallocation is made. The power management agent continues to monitornetwork traffic and/or to send communications to attached devices tokeep abreast of the attached network types, operational status, andpossibly changing power needs.

Referring to FIG. 1A, a switch 100 a is shown in which the power to bemanaged comes solely from an integral power supply 110. The switch 100 aalso includes a plurality of switching circuits 120. For purposes ofexample, sixteen switching circuits 120 a-p are shown. The switch 100 amay, however, include any number of switching circuits. The switchcircuits 120 may include PHYs, MACs, and packet switching components.Conductors 142, which connect the switch circuits 120 to the ports (notshown) of the switch 100 a through a center tap isolation transformer(not shown), carry data between the switch circuits 120 and the switchports.

The switch 100 a also includes a power management agent (not shown inFIGS. 1A and 1B, but shown in FIG. 2) having access to power outputcontrol 106, power meter 130, load sharing circuitry 104, and the powermanagement modules (not shown) of the switching circuits 120. Poweroutput control 106 transmits PoE power over conductors 140 to the centertap of the same center tap transformer that is connected to conductors142, as indicated, for example, by IEEE standard 802.3af or 802.3at. Theswitching circuit power management modules can read the status of theswitching ports 120 a-120 p and set operational parameters of theswitching ports 120 a-120 p. The power meter 130 measures the amount ofpower consumed by the switching circuits 120, based upon which switchingcircuits 120 a-120 p are enabled and operational.

The power meter 130 transmits a signal representing the powermeasurement to the power management agent. The power management agentuses this power measurement information, coupled with the knowledge ofthe amount of power allocated to each of the ports via PoE, and powermanagement policy information that specifies power allocationpreferences, to manage the amount of power allocated to the switchingcircuits 120 and to the switching ports. The power management agent mayperform such management in two passes.

Referring to FIG. 1B, a switch 100 b is shown in which the power to bemanaged comes from both the integral power supply 110 and from powersupplied by other attached devices (not shown) at network connectionsvia conductors 170 to a power input control 175. (Note that conductors170 and 140 may be contained within the same Ethernet cable.) The switch100 b includes a power management agent (not shown in FIGS. 1A and 1B,but shown in FIG. 2) having access to power input control 175. The powermeter 130 measures the amount of power consumed by the switchingcircuits 120, based upon which switching circuits 120 a-120 p areenabled and operational.

The power meter 130 transmits a signal representing the powermeasurement to the power management agent. The power management agentuses this power measurement information, coupled with the knowledge ofthe amount of power allocated to each of the ports via PoE, and policyinformation that specifies power allocation preferences, to manage theamount of power allocated from the integral power supply 110 to theswitching circuits 120 and to the switching ports.

If, however, there is insufficient power from the integral power supply110 to supply all the power requests received from the external devicesover connections 170, then the power management agent may request powerfrom one or more of the external attached devices. The power managementagent may, for example, transmit such requests as messages sent usingEthernet packets or via signals sent along the Ethernet cable, forexample by using methods in compliance with IEEE standards 802.3af or802.3at. If power is granted from the attached devices, then the powermanagement agent supplies additional power, received from the attacheddevices, to the load sharing circuitry 104 via the power input controlcircuitry 175.

Referring to FIG. 2, a power management agent 200 is shown according toone embodiment of the present invention. The power management agent 200includes power management agent processes 201 and power management agentdata 203. The power management agent processes 201 perform tasks thatmanage power to the switch circuits 120, power supplied to attacheddevices over conductors 140, and optionally power received from attacheddevices through the network connections via conductors 170. The powermanagement data 203 is used by the power management agent processes 201.Environment data 222 stores information about the devices connected tothe switch ports and network topology information that relates to eachof the switch ports. PoE Request data 226 contains information about thepower requested by and granted over conductors 140 and 170 to devicesattached to ports and, optionally, power requested from and suppliedfrom those attached devices. Power policy data 224 contains powerallocation policy information. Power policy data 224 includesparameters, such as Port Importance (PI), which can be set by managementand can be adjusted by the power control process 214 based onenvironment data 222. This and other parameters in the policy data 224are used by the power control process 214 to aide in power allocationdecisions.

The environment information gathering process 212 sends and receivesmessages over conductors 142 using Ethernet packets to gatherinformation about the devices connected to the switch's ports andnetwork topology information that relates to each of the switch ports.The environment information gathering process 212 gathers environmentinformation by snooping on packets received by the switch 100 a or 100 bfrom attached devices, communicating with attached devices, and byreading topology information stored by another agent elsewhere in thenetwork. Topology information may also be gathered from an agent (notshown) that is co-resident in the switch 100 a or 100 b.

The PoE protocol agent 216 receives power requests from, and optionallysend power requests to, attached devices connected to the switch'sports. Power requests may come from messages sent using Ethernet packetsor via signals sent along the Ethernet cable, for example using methodscompliant with IEEE standards 802.3af or 802.3at. The PoE protocol agent216 records the amount of power requested by each port in the PoErequests data 226. If power is needed from attached devices connectedvia conductors 170, then the power control process 214 specifies thepower it needs, in response to which the PoE Protocol process 216 issuespower requests through the network connections via conductors 170 todevices connected to the switch ports in an attempt to meet the statedpower need. The power control process 214 may specify the port or portson which it prefers to receive the requested power, or it can simplystate the amount of power request and allow the PoE protocol process 216to obtain the requested power from any attached device(s) connectedthrough the network connections via conductors 170. The PoE protocolprocess 214 then records all power received and allocated on a perswitch port basis in the PoE requests data 226.

The power control process 214 uses a two pass power management method toallocate the power supplied by the integral power supply 110. The firstpass makes a first power allocation by supplying power to the switchcircuits 120 and, via PoE, to other devices through the networkconnections via conductors 140 based on the policy data 224, such asport priority (importance). The second pass monitors, over the networkconnections via conductors 140, actual power consumption and learns moreabout which devices are connected to each of the switch ports to bettertune the applied port priorities (stored in the policy data 224). As aresult of the actual power measurements and the information obtainedabout the types of devices connected to the ports, the power controlprocess 214 makes a second power allocation among the switch circuits120 and, via PoE through the network connections over conductors 140, tothe other devices connected to the switch ports. The second powerallocation may differ from the first (initial) power allocation. If themonitoring process changes the port priorities, then power allocationsmay be adjusted. Other events, however, such as unplugging an externaldevice, may also trigger re-allocation of power. The power managementprocesses continues to monitor, over the network connections viaconductors 140, network traffic and/or to send communications to devicesattached to the switch ports to keep abreast of the attached devicetypes, operational statuses, and possibly changing power needs.

The power allocation policy 224 specifies how important a port (PortImportance (PI)) is regarding both its data switching operation and itsPoE power allocation. The policy data 224 also includes a portoperational priority (POP) parameter, which specifies the relativeimportance for operational for that port when compared to other switchports with the same PI value. The policy data 224 also includes a portPoE priority (PPP) parameter, which specifies the relative importance ofusing this port to deliver PoE relative to other switch ports with thesame PI value.

The power control process 214 may perform an initial (first pass) powerallocation among the switch ports, via conductors 140, as follows. Thepower control process 214 initializes a “remaining available powervalue” to be equal to the amount of power available to the switch (suchas the power supplied by the power supply 110, or the sum or the powersupplied by the power supply 110 and through the power input control175). The power control process 214 identifies the set of ports sharingthe highest PI value, and determines how much PoE power is requested bythis set of ports. If the total power requested for this set of portscan be powered with the remaining available power value, then the powercontrol process 214 grants PoE power to all the ports in this set;otherwise the power control process 214 uses the PPP parameter value ofthis set of ports as a tie breaker to allocate the remaining power amongthis set of ports.

If using the PPP value as a tie-breaker still does not enable power tobe allocated for all the ports sharing the current PPP value within theremaining power budget, then the process 214 may either: (1) allocatepower to no port having the highest PPP value, or (2) use anotherparameter as a tie breaker to allocate power to a subset of the deviceswith the highest PPP value. The tie breaker parameter may, for example,be the Port Operational Priority (PoP), port number, a characteristic ofthe attached station to that port such as MAC address, device type (IPphone, PC, switch, server, net appliance, printer, etc.), or managementassigned priority to specific device or device type.

After each PI port set, if any power has been allocated, then the powermanagement agent 200 waits a period of time to allow devices to power upand enter an operational state. If no power has been allocated, the nextPI port set is analyzed without delay. Actual power used by the switchcircuitry 120 is measured and the remaining power is recalculated.

Referring to FIG. 3, a flowchart is shown of a method for performing asecond pass power allocation according to one embodiment of the presentinvention. After the initial power allocation (301), the powermanagement agent 200 goes into data collection mode trying to glean moreinformation over the network connections via conductors 140 about: (1)the attached device on each of the switch ports and (2) the networktopology (302). Examples of information that the method 300 may collectabout attached devices include, for example, whether the attached deviceis an end node and, if so, what type of end node (PC, VoIP phone,Wireless AP, printer, server, etc.); whether the attached device is anintermediate device and, if so, what part of the network topology isconnected through that port; and whether the port is a redundant port.The method 300 may use these and/or other information to adjust policydata 224 such as the PI, POP, and PPP power allocation priorityparameters assigned to a switch port at step (303).

The newly adjusted power allocation parameters are used for a secondpass of power allocation to re-distribute the power allocation based onthe more detailed knowledge of the connected devices and the importanceof each (304). All inactive ports are put in low power (sleep) mode(305). Such ports can wake up in response to LAN activities from data orPoE signaling. The management agent 200 goes back to monitoring itsenvironment, and after any changes, the power management agent 200rechecks for power availability and allocation priority.

Referring to FIG. 4, a flowchart is shown of a method for utilizingpower provided over the network connections via conductors 170 byexternal devices attached to the ports of switch 100 b (FIG. 1B)according to one embodiment of the present invention. If the switch 100b has the capability to receive power from attached devices, and if theintegral power supply 110 is insufficient to supply all the power needto power the switch circuits 120 and the PoE-requested power, then themethod 400 requests power from attached devices to meet the amount ofrequested power that can not be supplied by the integral power supply110. First, the method 400 allocates power to the switching circuits 120and devices connected through the network connections via conductors 140based on the output capabilities of the integral power supply 110 (401).Then the method 400 determines whether the currently-allocated powerdiffers from the requested power (402). If all the requests have notbeen met, then the method 400 requests the power shortfall from one ormore devices attached to the switch ports (403). The method 400 thenallocates the power received from the attached devices through thenetwork connections via conductors 140 either to the switch ports, theattached devices, or both (404). The method 400 then reassesses theamount of power available and the amount of power needed (405), and thenreturns to allocating power based on the integral power supplycapabilities (401).

Referring to FIG. 5, a switch with PoE PSE capabilities 501 is connectedto an Ethernet wall jack 503 via Ethernet cables 502 and 504 accordingto one embodiment of the present invention. A standard Ethernet cable502 with RJ45 connectors on both ends connects a cell phone chargingcradle 509 to the wall jack 503. The cell phone charging cradle 509 isconnected to cell phone 507. The connection between the cell phonecharging cradle 509 and the cell phone 507 provides power that isprovided by the switch 501 and may also provide the Ethernet dataconnection. The cell phone charging cradle 509 may also provide a DC toDC or AC to DC voltage conversion to convert the voltage provided by theswitch 501, for example 48 volts, to a voltage that the cell phone usesto charge its batteries, for example 5 volts.

The cell phone charging cradle 509 may also have circuitry to provideinformation to the switch 501 indicating the power it is requesting fromthe switch. This circuitry can vary from a simple implementation thatsimply indicates that power is needed, for example the IEEE 802.3afdiscovery step that only requires a 25K resister, to a more compleximplementation that requests a lower power than the maximum using, forexample, the IEEE 802.3af power classification mechanism. The cell phonecharging cradle 509 can request one level of power to initially chargethe phone quickly and then later lower its request as the batteries needless power when they are at a higher charged state.

In an alternative implementation a special Ethernet cable 511 could beused to connect directly from the wall jack to the cell phone. Thiscable 511 may have a miniaturized Ethernet connector to plug into thecell phone due to the small size of today's cell phone. Also thecircuitry needed to request power could be placed in the RJ45 connectorthat plugs into the wall jack. This end is large enough to place aresistor and could also have a small ASIC that either provides the basicdiscovery function or senses the current draw by the cell phonebatteries being charged and, as stated above, lower the power requestaccordingly.

Embodiments of the present invention have a variety of advantages. Forexample, the embodiment shown in FIG. 5 has the advantage that theswitch may provide power to the charger cradle 509 and/or cell phoneover Ethernet cables 502 and 511 even while the cell phones 505 and 507are turned off or otherwise incapable of sending or receiving Ethernetpackets over the Ethernet cables 502 and 511. As a result, the cellphones 505 and 507 may easily be charged by the switch 501 withoutturning on the cell phones 505 and 507, and without requiring the cellphones 505 and 507 to establish network connections through the switch501 or to transmit any data. All of the techniques disclosed above maybe used to allocate power to the charger cradle 509 and cell phone 505along with other devices, some of which may be turned on andtransmitting Ethernet traffic through the switch.

Although certain prior art systems guarantee power and assign priorityof power delivery to a set of ports on a switch, such systems do nottrade off power allocated to other components, such as the switchingcircuits. In contrast, embodiments of the present invention dynamicallymonitor, assess, and trade off power allocated to the ports and to theswitching circuitry in a switch, thereby avoiding the problem ofallocating too much power to the switching circuitry and not enoughpower to the ports, and vice versa. Furthermore, ports may be assigneddifferent priorities so that in the event that available power isinsufficient to provide power to all ports, power may be provided to theports with the highest priorities. Furthermore, power may be obtainedfrom external devices over PoE and then provided to the switchingcircuitry or to other external devices over PoE.

In the embodiments described above, power budgets for switch operationand PoE are not pre-allocated. As a result, in such embodiments, it ispossible for large amounts of power to be allocated to the switchingcircuits before any power is allocated to PoE, and vice versa.Alternatively, to ensure that both the switching circuits and externaldevices receive at least some minimum amount of power, a policy may beenforced that allocates some amount of power to switch operation andanother amount for delivery of PoE power to other devices. As anotherexample, the above-described algorithms could apply ceilings to thepower applied to PoE and to the switching circuitry.

It is to be understood that although the invention has been describedabove in terms of particular embodiments, the foregoing embodiments areprovided as illustrative only, and do not limit or define the scope ofthe invention. Various other embodiments, including but not limited tothe following, are also within the scope of the claims. For example,elements and components described herein may be further divided intoadditional components or joined together to form fewer components forperforming the same functions.

Although the switch 100 is illustrated in certain embodiments asincluding the integral power supply 110, this is merely an example anddoes not constitute a limitation of the present invention. Alternativelyor additionally, one or more external power supplies may perform thesame function as the integral power supply 110.

The techniques described above may be implemented, for example, inhardware, software, firmware, or any combination thereof. The techniquesdescribed above may be implemented in one or more computer programsexecuting on a programmable computer including a processor, a storagemedium readable by the processor (including, for example, volatile andnon-volatile memory and/or storage elements), at least one input device,and at least one output device. Program code may be applied to inputentered using the input device to perform the functions described and togenerate output. The output may be provided to one or more outputdevices.

Each computer program within the scope of the claims below may beimplemented in any programming language, such as assembly language,machine language, a high-level procedural programming language, or anobject-oriented programming language. The programming language may, forexample, be a compiled or interpreted programming language.

Each such computer program may be implemented in a computer programproduct tangibly embodied in a machine-readable storage device forexecution by a computer processor. Method steps of the invention may beperformed by a computer processor executing a program tangibly embodiedon a computer-readable medium to perform functions of the invention byoperating on input and generating output. Suitable processors include,by way of example, both general and special purpose microprocessors.Generally, the processor receives instructions and data from a read-onlymemory and/or a random access memory. Storage devices suitable fortangibly embodying computer program instructions include, for example,all forms of non-volatile memory, such as semiconductor memory devices,including EPROM, EEPROM, and flash memory devices; magnetic disks suchas internal hard disks and removable disks; magneto-optical disks; andCD-ROMs. Any of the foregoing may be supplemented by, or incorporatedin, specially-designed ASICs (application-specific integrated circuits)or FPGAs (Field-Programmable Gate Arrays). A computer can generally alsoreceive programs and data from a storage medium such as an internal disk(not shown) or a removable disk. These elements will also be found in aconventional desktop or workstation computer as well as other computerssuitable for executing computer programs implementing the methodsdescribed herein, which may be used in conjunction with any digitalprint engine or marking engine, display monitor, or other raster outputdevice capable of producing color or gray scale pixels on paper, film,display screen, or other output medium.

1-20. (canceled)
 21. A power management agent for use with a networkswitch, the network switch having a plurality of switching circuits andat least one port, the power management agent comprising: internal poweridentification means for identifying an amount of power available froman internal power supply of the switch; internal power provision meansfor providing power to the at least one port using power from theinternal power supply if the amount of power available is at least asgreat as the aggregate amount of power required to be provided to the atleast one port; and external power provision means comprising: means forrequesting power from at least one device connected to the at least oneport if the amount of power available is less than the aggregate amountof power required to be provided to the at least one port; means forreceiving power from the at least one device if the amount of poweravailable is less than the aggregate amount of power required to beprovided to the at least one port; and means for providing power to theat least one port using power from the internal power supply and thereceived power if the amount of power available is less than theaggregate amount of power required to be provided to the at least oneport.
 22. A system comprising: a network switch; a first deviceconnected to the switch over a network connection at a port of thenetwork switch; wherein the network switch comprises: means forproviding power via PoE to the first device while no data is being sentto or received from the first device over the network connection. 23.The system of claim 22, wherein the means for providing power comprisesmeans for providing power to the first device over a network cable; andwherein the switch comprises means for transmitting data to the firstdevice over the network cable.
 24. The system of claim 22, wherein thenetwork cable comprises an Ethernet cable.
 25. The system of claim 22,wherein the first device comprises means for performing a DC-DCconversion of the provided power, and means for providing the convertedpower to a second device connected to the first device.
 26. The systemof claim 22, wherein the first device comprises means for performing anAC-DC conversion of the provided power, and means for providing theconverted power to a second device connected to the first device.
 27. Anetwork switch comprising: a port comprising means for coupling the portto a first device over a network connection; and means for providingpower via PoE to the first device while no data is being sent to orreceived from the first device over the network connection.
 28. Thesystem of claim 27, wherein the means for providing power comprisesmeans for providing power to the first device over a network cable; andwherein the switch comprises means for transmitting data to the firstdevice over the network cable.
 29. The system of claim 27, wherein thenetwork cable comprises an Ethernet cable.
 30. The system of claim 27,wherein the first device comprises means for performing a DC-DCconversion of the provided power, and means for providing the convertedpower to a second device connected to the first device.
 31. The systemof claim 27, wherein the first device comprises means for performing anAC-DC conversion of the provided power, and means for providing theconverted power to a second device connected to the first device.
 32. Adevice comprising: a port comprising means for coupling the port to anetwork switch over a network connection; and means for receiving powervia PoE from the network switch over the network connection while nodata is being sent to or received from the device over the networkconnection.
 33. A network cable comprising: means for connecting thecable to a device; means for transmitting data to and receiving datafrom the device according to a network protocol over a networkconnection; and means for requesting power over the network connectionon behalf of the device.
 34. The network cable of claim 33, wherein thenetwork protocol comprises an Ethernet protocol and wherein the networkconnection comprises an Ethernet connection.
 35. The network cable ofclaim 33, further comprising: means for receiving power over the networkconnection in response to the request; and means for providing thereceived power to the device through the means for connecting the cableto the device.
 36. The network cable of claim 33, wherein the means forconnecting comprises the means for requesting power.
 37. The networkcable of claim 33, wherein the means for requesting comprises means forrequesting power according to IEEE specification 802.3af or 802.3at.